package com.xwn.utils.utils;


import com.xwn.bean.constant.SystemConstant;
import org.apache.commons.codec.digest.DigestUtils;


/**
 * MD5通用类
 * 
 */
public class MD5Util {
	 /**
     * MD5方法
     * 
     * @param text 明文
     * @param key 密钥
     * @return 密文
     * @throws Exception
     */
    public static String md5(String text) throws Exception {
        //加密后的字符串
        String key = new StringBuilder(text).append(SystemConstant.MD5_SECRET).toString();
        return DigestUtils.md5Hex(key);
    }

    /**
     * MD5验证方法
     * 
     * @param text 明文
     * @param key 密钥
     * @param md5 密文
     * @return true/false
     * @throws Exception
     */
    public static boolean verify(String text, String md5) throws Exception {
        //根据传入的密钥进行验证
        String md5Text = md5(text);
        if(md5Text.equalsIgnoreCase(md5)){
            System.out.println("MD5验证通过");
            return true;
        }
        return false;
    }

    
    public static void main(String[] args) throws Exception {
		String text = "123456";
		System.out.println(md5(text));
        System.out.println(verify(text,"4460083f8808b86e28106ae5c323aa65"));
	}
}
